Segmented Memory Control System for Gaming Devices

ABSTRACT

A segmented memory control system is disclosed. Specifically, multiple memory locations, including removable memory locations, are part of a gaming device. The memory locations are prioritized and data, including new data on removable memory units, with a higher priority is used by the gaming device at run time.

BACKGROUND OF THE INVENTION

Although the invention is suitable for a wide variety of applications, the description of the preferred embodiment uses it in a gaming unit, one of the class of machines variably known as slot machines, video poker machines, video keno machines, or generally as “gambling devices.” Such devices have become ubiquitous throughout the world as various jurisdictions have legalized gambling as a recreational pastime and means of generating tax revenues.

These devices began as purely mechanical “slot machines” more than a century ago (with various mechanical amusement devices dating back much further.) With the addition of electromechanical mechanisms and, more recently, electronics and virtual displays, they have becomes exceedingly complex gaming platforms capable of offering a vast array of gaming choices to today's sophisticated gaming customer. The problem is that customers insist on more and more choices, with more and more frequent updates. Unlike traditional “arcade” gaming systems, gambling devices are heavily regulated. States either maintain their own independent testing laboratories or rely on closely monitored independent laboratories to make sure the machines are honest and perform as advertised and within the gambling regulatory scheme of the pertinent jurisdiction. This means that every time a manufacturer wants to upgrade an existing machine, the entire configuration must be retested and certified: in most jurisdictions, the regulations are so strict that a state regulatory employee must be present if a gambling machine is so much as moved on the floor or opened to replace a burned-out light bulb.

Given this regulatory environment, and the price of the machines, it can be very difficult for manufacturers to provide upgrades at a reasonable cost and in a timely fashion while maintaining security and reliability. It would be desirable to provide a means of upgrading gambling machines which would provide maximum opportunity for diverse consumer choices while allowing ease of upgrade and simple evaluation by regulatory agencies. The present invention addresses these concerns.

OBJECTS OF THE INVENTION

An object of the invention is to provide a segmented memory control system for gaming units.

A second object of the invention is to provide a means of quickly and easily upgrading gaming units to change any desired parameter or play means.

A third object of the invention is to provide a means of upgrading gaming units which minimizes the total change to the gaming unit to facilitate regulatory evaluation of the upgraded gaming unit.

Other objects and advantages of the invention will become apparent in the following disclosure.

SUMMARY OF THE INVENTION

The present invention relates to a segmented memory control system for gaming units. Multiple memory reader units, each capable of reading removable memory units, are incorporated into the gaming unit. The gaming unit has a prioritization scheme so that data on the memory units are evaluated and if a data set on a higher priority reader unit overrides a data set on a lower priority reader unit or the gaming unit's base instruction and data sets, the data on the highest-priority reader unit is used by the gaming unit as it executes instructions and play proceeds. This allows upgrades to be submitted as individual data sets to regulators and for the upgrading process to be efficient, fast, and simple to minimize expense and downtime for the gaming unit.

BRIEF DESCRIPTION OF THE DRAWINGS

The characteristic features of the invention will be particularly pointed out in the claims. The descriptions of the preferred embodiment refer to the preceding drawings:

FIG. 1 is an abstract representational view of the entire apparatus.

FIG. 2 is an abstract representational view of an embodiment of the segmented memory control system.

FIG. 3 is a flow chart demonstrating the operational cycle of the apparatus.

DESCRIPTION OF THE PREFERRED EMBODIMENT

The description of the preferred embodiment uses the invention in a gaming device of the type usually referred to as a “slot machine.” It could be used in any desired gaming or entertainment device, including but not limited to such things as a video poker game, a video keno game, a combination gaming machine, or even a coin-operated or bartop amusement device.

By referring to FIG. 1, the basic concept of the invention may be easily understood. Gaming Unit 100 comprises cabinet 109, which contains user control array 104 and display 106, which are controlled by the segmented memory control system. (See FIG. 2.)

FIG. 2 details a potential embodiment of the invention. Central processor 102 uses instructions, graphics, sound and other customary data stored on primary memory 108 to conduct play by displaying graphics on display 106 and allowing interaction (game selection, wagering, etc.) by the player via user control array 104. It is preferred, but not required, that primary memory 108 be a ROM, PROM, or E-PROM chip as customarily used in the field of electronics. Primary memory 108 could also comprise a flash RAM chip, a hard drive, an optical disc in an optical disc reader, or any other non-volatile means of storing data as required to conduct game play. While it is not required, a random-access memory means, such as a RAM chip or a hard drive (not shown) will greatly facilitate the operation of gaming unit 100 by allowing the unit to temporarily store information such as the size of the current wager, the results of prior games conducted by the current player, personal data about the current player for customized game play, or any other desired temporary information.

Reader units 101 and 103 are capable of reading removable memory units 105 and 107. It is preferred, but not required, that the reader units be USB-based flash RAM readers, and that removable memory units be flash RAM cards, as both of those items are customarily used in the field of electronics. The reader units could also be optical disc readers, DIP or ZIF sockets for DIP chips, or any other configuration allowing the insertion and removal of corresponding appropriate removable memory units. It is strongly preferred, but not required, that the reader units be such that if there is no removable memory unit present, the reader units do not suffer degradation and can be disregarded by the central processing unit without any interference in the operation of the gaming unit.

FIG. 3 details the operation of the preferred embodiment. At an appropriate time or times (preferably, at bootup of the gaming unit) the Segmented Memory Evaluation Process begins as in Step 200. First, the device determines, whether by inquiring of a central server, reading back a non-volatile memory location, asking for user input, or any other reasonable means, how many Data Types are to be evaluated as in Step 202, up to a constant which is referred to as YMAX. YMAX represents the number of times the entire Segmented Memory Evaluation procedure will be executed. Each Data Type represents a class or subclass of computer code, computer graphics, digitized sound, algorithms, localized language text, or other suitable type of electronic data. Specific data in the form of machine-readable text, code, sound or graphics is referred to as a Data Set. In the example given, there are two Removable Memory Units and one Primary Memory Unit to be evaluated. It is required that the Primary Memory Unit contain a Data Set for each Data Type, even if it is only a default “zero value,” or else that the code controlling the unit set a default value for any Data Type for which a Data Set is not found.

After setting the Data Type to “1” as in Step 204, where a location of “1” corresponds to the first Data Type to be set, the unit establishes the priority of Data Sets according to their location in memory locations, beginning with memory location 1 as in Step 208. The priority of each memory location (removable or primary) is set according to a predetermined scheme. In the example given, the lower the number of the address of the memory location, the higher priority Data Sets from that location receive in the Segmented Memory Evaluation process. The actual method and means of prioritization is not specific, only that there be such a prioritization. It is permissible, although not preferred or required, that the Removable Memory Units contain prioritizing Data sets which independently establish their priority, e.g. under a priority system using a hierarchy patterned after the Greek alphabet, a Removable Memory Unit could contain a Data Set which gave its priority as “Beta,” which would mean it would override any Removable Memory Unit with a priority of “Delta” but would be overridden by a Removable Memory Unit with a priority of “Alpha,” using a hierarchy following the Greek alphabet. If this technique is used, it is required that some means of either preventing or dealing with duplicate priority claims, such as assigning the higher priority to a data set with a more recent write date, or in the lowest-positioned Reader Unit, or other sufficiently identifiable criteria.

Once the prioritization has been established—here, simply using locations referred to by ascending Roman numerals—the unit first looks for a Data Set in Memory Unit Address Location 1, which corresponds to Removable Memory Unit 105 in reader unit 103 (not shown: see FIG. 1) as in Step 210. If it does not find a Data Set to put in the current Data Type, it increments the location to search by one as in Step 212 and repeats Step 210. This process repeats until a Data Set is found or the lowest-priority location has been evaluated. It is, as previously stated, required that either the primary memory 108 (not shown, see FIG. 1) or whatever corresponds to the lowest-priority memory location contain default data for all Data Types, or some process for dealing with non-specified Data Sets be implemented. Here, it is assumed that the former is true and therefore at some point, an appropriate Data Set will be located. When this occurs, the unit sets the contents of the current Data Type to equal the current Data Set as in Step 214.

After setting the contents of the current Data Type, the unit checks to see if it has filled all Data Types—in other words, to see if the Segmented Memory Evaluation process has executed YMAX times. If the answer is no, the unit increments the Data Type to be evaluated by one as in Step 218, and then the unit returns to Step 206, and the process repeats. If the answer is yes, the process is complete, and the process terminates as in Step 220.

To cite an example which is not preferred or required, but well illustrates the practice of the invention to those of ordinary skill in the relevant art, the means of prioritizing the memory units, including both primary and removable memory units, could be as straightforward as assigning each a volume or device identifier and using what is typically referred to in most modern operating systems as the PATH variable to allow reference to otherwise-identical file specification paths in the order in which the devices are referred to in the PATH variable. Then, if the data required for any particular data set is normally stored in a data file identified as DEVICE/foo/bar/file.ext, the gaming unit looks for it in each device in turn according to the priority set forth in the PATH variable such that if the highest priority device is identified as device_0, the next highest is identified as device_(—)1, and so forth until the primary device is identified as device_X, the gaming unit will first look in device_0/foo/bar/ for the data file it needs, then device_1/foo/bar/, and so on until it reaches device_X/foo/bar/, at which point it will either find default data or respond as desired to a lack of defined data for that data set.

While the description above details the preferred and best mode(s) of practicing the invention, many other configurations and variations are possible. For example:

-   -   1) The invention need not be practiced as a gaming unit, but         could be a coin-operated amusement device, a home gaming system,         or any other appropriate system.     -   2) The various memories need not comprise physical RAM, Flash         RAM, or other similar devices, but could comprise optical discs,         floppy discs, or even remote memory locations accessible through         a network.         Accordingly, the scope of the invention should be determined not         by the embodiment(s) illustrated, but by the claims below and         their equivalents. 

1) A segmented memory control system comprising: A) A gaming unit having a central processor and a primary memory, the primary memory containing a plurality of primary data sets, each comprising computer code, computer graphics, digitized sound files, or general-purpose data; B) At least two reader units operably connected to the central processor, each reader unit capable of reading one of a plurality of removable memory units, each of which contains a plurality of data sets, each data set comprising computer code, graphics, or general-purpose data, the primary memory and the removeable memory units together comprising the memory units; C) A means for prioritizing the reader units so that the data sets on the removable memory unit which is inserted into the reader unit with a higher priority takes precedence over the data sets on any removable memory unit which is inserted into the reader unit with a lower priority and the primary data sets in the primary memory, such that the central processor uses the data set with the higher priority during operation of the gaming unit or, if no data set with higher priority exists, the central processor uses a primary data set. 2) A segmented memory control system as in claim 1 wherein the removable memory unit comprises a virtual removable memory unit comprising a data file located outside the gaming unit and accessible through a computer network. 3) A segmented memory control system as in claim 1 wherein the means of prioritizing the memory units comprises assigning the primary memory and each inserted removable memory unit a unique device identifier and then setting a PATH variable such that the unique device identifiers are ordered in a desired sequence in the PATH variable such that the data sets are referred to by a plurality of unique file paths, the unique file paths then being searched by the central processor in the desired sequence for the data sets. 4) A segmented memory control system as in claim 1 wherein the removable memory units contain a priority indicating data set which independently establishes the priority of that removable memory unit in the means for prioritizing the memory units. 5) A segmented memory control system as in claim 1 wherein the primary memory is itself removable from the gaming unit. 